lexer grammar AntlrLexer;

options {
  language = Java;
}

@lexer::header {
   package ejercicio9;
}

fragment PAR_OP : '(' ;
fragment PAR_CL : ')' ;
PARES: PAR_OP | PAR_CL;
fragment LLAV_OP: '{';
fragment LLAV_CL: '}';
LLAVES: LLAV_OP | LLAV_CL;
fragment OP_MENOR: '<';
fragment OP_MAYOR: '>';
fragment OP_IGUAL: '=';
fragment OP_MENORI: '<=';
fragment OP_MAYORI: '>=';
RELACIONALES: OP_MENOR| OP_MAYOR | OP_IGUAL | OP_MAYORI |OP_MENORI |DIST;
fragment OP_SUM : '+';
fragment OP_REST : '-';
OP_ADD: OP_SUM | OP_REST;
fragment AMP: '&';
fragment OR: '|';
fragment DIST: '!=';
fragment EXCLAM: '!';
OPERADORES: AMP | OR | EXCLAM;
fragment OP_AST: '*';
fragment OP_DIV: '/';
OP_MUL: OP_AST |OP_DIV;
COLON: ':';

SEPARADOR : ';' ;
DIGITO : '0'..'9';
NUMERO: (DIGITO)+;
LETRA: ('a'..'z'|'A'..'Z'|'_');
IDENT: (LETRA)+;

